package demo.day03

// Kotlin语言的run内置函数
// run函数返回类型 是根据匿名函数最后一行变化而变化的
// run函数的 匿名函数里面持有的是 this == str本身
fun main() {
    val str = "Kiki is OK"
    // 匿名函数配合run
//    val r = str.run {
//        12345
//    }
//    println(r)
    // 具名函数配合run函数
    println(
        str.run(::isLong)
            .run(::showText)
            .run(::mapText)
    )
}


private fun isLong(str: String) = if (str.length > 5) true else false

private fun showText(isLong: Boolean) = if (isLong) "字符串合格" else "字符串不合格"

private fun mapText(getShow:String) = "[$getShow]"